package org.dromara.web.service;

import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.service.TokenStream;
import dev.langchain4j.service.UserMessage;
import dev.langchain4j.service.V;
import reactor.core.publisher.Flux;

public interface IChatAssistant {
    /**
     * 聊天功能
     *
     * @param message 消息
     * @return
     */
    @SystemMessage("你现在是股票金融大师，帮我根据我给你的所有股票数据，帮我分析和预测未来的变化趋势，以及选股建议。你需要把时间戳改为合适的日期格式给用户，其中我的时区是Unix时间戳")
    @UserMessage("请回答以下问题：{{message}}，帮我分析和预测未来的变化趋势，以及选股建议（你需要把时间戳改为合适的日期格式给用户，其中我的时区是Unix时间戳）")
    String chat(@V("message") String message);

    /**
     * 聊天功能
     *
     * @param message 消息
     * @return
     */
    @SystemMessage("你现在是股票金融大师，帮我根据我给你的所有股票数据，帮我分析和预测未来的变化趋势，以及选股建议。你需要把时间戳改为合适的日期格式给用户，其中我的时区是Unix时间戳")
    @UserMessage("请回答以下问题：{{message}}，帮我分析和预测未来的变化趋势，以及选股建议（你需要把时间戳改为合适的日期格式给用户，其中我的时区是Unix时间戳）")
    Flux<String> chat2(@V("message") String message);
}
